package com.qf.proxy;

import com.qf.service.FangDongService;
import com.qf.service.FangDongServiceImpl;

/**
 * @author 汤奇
 * @version V1.0
 * @Project BookPro
 * @Package com.qf.proxy
 * @Description: 代理类, 模式中介
*                静态代理: 因为代码也算是硬编码, 写死在代码中
 *                       有多少房东, 也就有多少代理类, 房东相当于service,
 *                       一个项目中可能有很多, 那么就需要很多的代理类, 比较臃肿
 *                       可以用动态代理来解决
 * @Date 2022/6/4 21:32
 */
public class ZhongJieProxy implements FangDongService {

    private FangDongService fangDongService = new FangDongServiceImpl();

    /**
     * 中介帮助房东收房租
     * */
    @Override
    public void zuFang() {
        //添加辅助功能, 例如: 打印日志, 事务功能
        System.out.println("=====发布房屋信息====");
        System.out.println("=====带租客看房====");

        //执行核心业务, 让房东签合同, 收房租
        fangDongService.zuFang();

        System.out.println("=====维护房屋=====");
    }
}
